home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 1.iso / ARGONET / PD / PROGRAMMING / LCLINT2.SPK / test / UnixMake < prev   
Text File  |  1996-08-28  |  17KB  |  539 lines

  1. ##################################################
  2. ###                                            ###
  3. ### Makefile for LCLint testing                ###
  4. ###                                            ### 
  5. ### designed for use with gmake (GNU make)     ### 
  6. ###                                            ###
  7. ##################################################
  8.  
  9. .PHONY: all fulltest quicktest funcpointer cast abstract
  10. .PHONY:    version help abstptr abstract alias alttypes ansireserved 
  11. .PHONY: argorder args blocks break cases cast charlit 
  12. .PHONY: clauses commentchar 
  13. .PHONY: compdestroy controldepth csyntax czechnames czechoslovaknames 
  14. .PHONY: decl enum exports external fields flags funcpointer glob globals 
  15. .PHONY: impabstract init inparam internal iter keep libs lintcomments 
  16. .PHONY: list macros macrosef merge modifies modtest moduncon mongoincludes 
  17. .PHONY: null observer oldstyle outglob outparam preds prefixes printflike rc 
  18. .PHONY: refcounts release repexpose sharing slovaknames special
  19. .PHONY: specclauses stack staticarray
  20. .PHONY: strings structassign
  21. .PHONY: typequals ud ulstypes union unreachable unused 
  22. .PHONY: db1 db2 db3 tests2.2
  23. .PHONY: all test fulltest expects quicktest
  24.  
  25. .SUFFIXES: .out .expect .c .lcl .h .lh .diff
  26.  
  27. SHELL = /bin/csh 
  28.  
  29. # Command to run lclint
  30. LCLINT  = lclint
  31. LCLINTP = $(LCLINT)
  32.  
  33. # Make sure .lclintrc files are not used so test results do not
  34. # depend on local settings.
  35. LCLINTR = $(LCLINTP) -nof -hints
  36.  
  37. UNITTESTS = help abstptr abstract alias alttypes ansireserved argorder args blocks break cases cast charlit clauses commentchar compdestroy controldepth csyntax czechnames czechoslovaknames decl enum exports external fields flags funcpointer glob globals impabstract init inparam internal iter keep libs lintcomments list macros macrosef merge modifies modtest moduncon mongoincludes null observer oldstyle outglob outparam preds prefixes printflike rc refcounts release repexpose sharing slovaknames specclauses special stack staticarray strings structassign typequals ud ulstypes union unreachable unused tests2.2
  38.  
  39. UNITEXPECTS  = $(addsuffix .expect, $(UNITTESTS))
  40.  
  41. INTEGTESTS = db1 db2 db3
  42. INTEGEXPECTS  = $(addsuffix .expect, $(INTEGTESTS))
  43.  
  44. LCLINTTESTS = $(UNITTESTS) $(INTEGTESTS)
  45.  
  46. all: fulltest
  47. test: fulltest
  48.  
  49. GREP = grep
  50. DIFF = diff
  51. CLEANOUTPUT = $(GREP) -v "LCLint 2." | $(GREP) -v "make -e" | $(GREP) -v "make\[" | $(GREP) -v "lclint -nof" | $(GREP) -v "make  -e"
  52.  
  53. ### not real .c
  54.  
  55. .c.expect:
  56.     $(MAKE) -e $(*) |& $(CLEANOUTPUT) > $(*).expect ; \
  57.     cat $(*).expect
  58.  
  59. .c.diff:
  60.     $(MAKE) -e $(*) |& $(CLEANOUTPUT) > $(*).out ; \
  61.         diff $(*).expect $(*).out
  62.  
  63. expects:
  64.     echo "Saving old expects: " ; \
  65.         more *.expect | cat > expects-`date +"%y-%m-%d-%H"`
  66.     @$(foreach test, $(UNITTESTS),  \
  67.        echo "Making "$(test)".expect: " ; \
  68.            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).expect ; \
  69.        cat $(test).expect ; ) 
  70.     @echo "Integration Tests"    
  71.     @$(foreach test, $(INTEGTESTS),  \
  72.        echo "Making "$(test)".expect: "; \
  73.            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).expect ; \
  74.        cat $(test).expect ; ) 
  75.  
  76. fulltest:
  77.     @echo ''
  78.     @echo 'Testing '$(LCLINTP)
  79.     @echo ''
  80.     @echo 'Version:'
  81.     @echo ''
  82.     @$(LCLINTP) -help version
  83.     @$(LCLINTP) -help vars
  84.     @echo ''
  85.     @echo "Unit Tests:"
  86.     @echo ''
  87.     @$(foreach test, $(UNITTESTS),  \
  88.        echo "Checking "$(test)"... " ; \
  89.            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).out ; \
  90.        $(DIFF) $(test).expect $(test).out ; \
  91.        if ($$status) echo "*** FAIL ***" ; \
  92.        ) 
  93.     @echo ''
  94.     @echo "Integration Tests"    
  95.     @echo ''
  96.     @$(foreach test, $(INTEGTESTS),  \
  97.        echo "Checking "$(test)"... "; \
  98.            $(MAKE) -e $(test) |& $(CLEANOUTPUT) > $(test).out ; \
  99.        $(DIFF) $(test).expect $(test).out ; )
  100.  
  101. quicktest: $(LCLINTTESTS)
  102.  
  103. ###
  104. ### Unit Tests
  105. ###
  106.         
  107. version:
  108.     -$(LCLINTP) -help version
  109.  
  110. help:
  111.     -@$(LCLINTP)
  112.     -@setenv LARCH_PATH "/dev/null"; $(LCLINTP) empty.lcl
  113.     -@$(LCLINTP) -help
  114.     -@$(LCLINTP) -asdf
  115.     -@$(LCLINTP) +boolint +boolint 
  116.     -@$(LCLINTP) -help flags alpha
  117.     -@$(LCLINTP) -help flags all
  118.  
  119. abstptr:
  120.     $(LCLINTR) abstptr -expect 9
  121.     $(LCLINTR) abstptr +voidabstract -expect 6
  122.  
  123. abstract:
  124.     $(LCLINTR) abst_t.lcl commentcmd.c -expect 15
  125.  
  126. alias:
  127.     @-mv mut.lh mut.lh-old
  128.     $(LCLINTR) +lh mut
  129.     @-$(DIFF) mut.lh mut.lh-old
  130.     $(LCLINTR) mut alias +globalias -expect 19
  131.     $(LCLINTR) mut alias2 +globalias -expect 17
  132.     $(LCLINTR) +lh alias3 -expect 14 
  133.     $(LCLINTR) +lh alias4 +boolint
  134.     $(LCLINTR) alias4 -pred +retalias -expect 6
  135.     $(LCLINTR) +lh alias5 +memchecks -null -specundef -expect 5
  136.  
  137. alttypes:
  138.     $(LCLINTR) alttypes.c -expect 2
  139.  
  140. ansireserved:
  141.     $(LCLINTR) ansireserved.c +ansireserved -nolib -expect 8
  142.     $(LCLINTR) ansireserved.c +ansireserved +ansireservedlocal -nolib -expect 11
  143.     $(LCLINTR) ansireserved.c +checks -exportheadervar -exportheader -expect 9
  144.  
  145. argorder:
  146.     $(LCLINTR) argorder.c -expect 4
  147.     $(LCLINTR) argorder2  -expect 5
  148.     $(LCLINTR) argorder3.c -expect 8
  149.     $(LCLINTR) argorder4 -expect 9
  150.     $(LCLINTR) argorder4 -evalorder -expect 1
  151.     $(LCLINTR) argorder5.c +evalorderuncon -expect 3
  152.  
  153. args:
  154.     $(LCLINTR) args -noeffect -expect 12
  155.  
  156. blocks:
  157.     $(LCLINTR) blocks.c -expect 4
  158.     $(LCLINTR) blocks.c +ifblock +elseifcomplete -expect 7
  159.     $(LCLINTR) blocks.c -ifempty +whileempty +whileblock -expect 3
  160.     $(LCLINTR) blocks.c -ifempty +forempty +forblock -expect 3
  161.     $(LCLINTR) blocks.c +allempty -expect 6
  162.     $(LCLINTR) blocks.c +strict +partial -exportheader -expect 11
  163.  
  164. break:
  165.     $(LCLINTR) break.c -expect 4
  166.     $(LCLINTR) break.c +deepbreak -expect 6
  167.     $(LCLINTR) break.c +deepbreak -looploopbreak -expect 5
  168.  
  169. cases: 
  170.     $(LCLINTR) cases.c -expect 5
  171.     $(LCLINTR) cases2.c -expect 2
  172.     $(LCLINTR) cases2.c +checks -exportheader -expect 3
  173.     $(LCLINTR) cases2.c +checks -exportheader -branchstate -expect 3
  174.  
  175. cast:
  176.     $(LCLINTR) cast -accessmodule -expect 20
  177.     $(LCLINTR) cast2.c +checks -exportheader -expect 3
  178.  
  179. charlit:
  180.     $(LCLINTR) +hints charlit.c -expect 4
  181.     $(LCLINTR) +hints -numliteral charlit.c -expect 5
  182.     $(LCLINTR) +hints charlit.c +charintliteral +ignoresigns
  183.  
  184. clauses: 
  185.     $(LCLINTR) clauses.c +memchecks -expect 4
  186.     $(LCLINTR) clauses2.c +memchecks 
  187.     $(LCLINTR) clauses3.c +memchecks -expect 2
  188.     $(LCLINTR) clauses3.c +memchecks +unixlib -expect 3
  189.  
  190. commentchar:
  191.     $(LCLINTR) commentchar.c -expect 4
  192.     $(LCLINTR) -commentchar '#' commentchar.c -expect 4
  193.  
  194. controldepth:
  195.     $(LCLINTR) +hints -controlnestdepth 2 controldepth.c -expect 2
  196.     $(LCLINTR) +hints -controlnestdepth 1 controldepth.c -expect 2
  197.  
  198. compdestroy:
  199.     $(LCLINTR) compdestroy.c +checks -exportheader -expect 1
  200.     $(LCLINTR) compdestroy.c +checks -exportheader +strictdestroy -expect 2
  201.     $(LCLINTR) compdestroy.c +checks -exportheader +strictdestroy +strictusereleased -expect 3
  202.     $(LCLINTR) compdestroy.c +strict +partial -exportheader -expect 3
  203.  
  204. csyntax:
  205.     $(LCLINTR) +quiet -incondefs csyntax.c 
  206.     $(LCLINTR) +quiet csyntax2.c
  207.     $(LCLINTR) +quiet csyntax3.c
  208.     $(LCLINTR) +quiet -incondefs csyntax4.c
  209.     $(LCLINTR) +quiet csyntax5.c
  210.     $(LCLINTR) +quiet csyntax6.c
  211.     $(LCLINTR) +quiet csyntax7.c
  212.     $(LCLINTR) +quiet csyntax8.c
  213.     $(LCLINTR) +quiet csyntax9.c
  214.     $(LCLINTR) +quiet csyntax10.c
  215.     $(LCLINTR) +quiet csyntax11.c
  216.     $(LCLINTR) +quiet csyntax12.c
  217.     $(LCLINTR) +quiet csyntax13.c
  218.     $(LCLINTR) +quiet csyntax14.c
  219.     $(LCLINTR) +quiet csyntax15.c
  220.     $(LCLINTR) +quiet csyntax16.c
  221.     $(LCLINTR) +quiet csyntax17.c
  222.  
  223. czechnames:
  224.     $(LCLINTR) czechnames.c
  225.     $(LCLINTR) +hints +czech czechnames.c -expect 2
  226.     $(LCLINTR) +hints +czech -czechvars czechnames.c -expect 1
  227.     $(LCLINTR) +hints +czech -accessczech czechnames.c -expect 6
  228.  
  229. czechoslovaknames:
  230.     $(LCLINTR) +hints +czechoslovak czechnames.c -expect 1
  231.     $(LCLINTR) +hints +czechoslovak slovaknames.c -expect 1
  232.     $(LCLINTR) +hints +czechoslovak +slovakvars slovaknames.c -expect 2
  233.  
  234. decl:
  235.     $(LCLINTR) decl.c -expect 3
  236.     $(LCLINTR) decl.c +strict -expect 6
  237.     $(LCLINTR) decl2 -expect 4
  238.  
  239. enum:
  240.     $(LCLINTR) enum -expect 16
  241.     $(LCLINTR) enum -misscase -expect 14
  242.  
  243. exports:
  244.     $(LCLINTR) exports.c +exporttype +exportvar +exportfcn +topuse +typeuse -expect 6
  245.     $(LCLINTR) exports.c +exportany -expect 3
  246.     $(LCLINTR) exports.c
  247.  
  248. external:
  249.     $(LCLINTR) external.c +partial
  250.     $(LCLINTR) external.c +partial +distinctexternalnames -expect 2
  251.     $(LCLINTR) external.c -nolib +partial -externalnamelength 3 -expect 3
  252.     $(LCLINTR) external.c -nolib +partial -externalnamelength 3 +externalnamecaseinsensitive -expect 3
  253.     $(LCLINTR) external.c +partial -externalnamelength 3 -expect 4
  254.  
  255. fields:
  256.     $(LCLINTR) fields.c +memchecks -expect 6
  257.     $(LCLINTR) fields2.c +memchecks -expect 5
  258.     $(LCLINTR) fields3.c +memchecks
  259.  
  260. flags:
  261.     $(LCLINTR) flags.c -expect 8
  262.     $(LCLINTR) +nocomments flags.c -expect 2
  263.  
  264. funcpointer:
  265.     $(LCLINTR) +memchecks +noparams funcpointer.c -expect 16
  266.  
  267. glob:
  268.     $(LCLINTR) glob -expect 4
  269.     $(LCLINTR) glob -globuse -expect 3
  270.     $(LCLINTR) glob +globunspec -expect 6
  271.  
  272. globals:
  273.     $(LCLINTR) -modifies globals.c -expect 5
  274.     $(LCLINTR) -modifies globals.c +allglobals -expect 6
  275.     $(LCLINTR) -modifies globals.c +impcheckedglobals -expect 6
  276.     $(LCLINTR) -modifies globals.c -globals -checkstrictglobals -expect 2
  277.     $(LCLINTR) -modifies globals.c +globunspec -expect 6
  278.     $(LCLINTR) -modifies globals.c +globunspec +allglobals -expect 8
  279.  
  280. impabstract:
  281.     $(LCLINTR) -accessfile impabstract.c 
  282.     $(LCLINTR) -accessfile +hints +impabstract impabstract.c -expect 2
  283.     $(LCLINTR) -accessfile +hints +impabstract impabstract -expect 2
  284.  
  285. init:
  286.     $(LCLINTR) init.c -expect 12
  287.     $(LCLINTR) init.c +checks -exportheadervar -expect 15
  288.  
  289. inparam:
  290.     $(LCLINTR) inparam.c -expect 2
  291.     $(LCLINTR) +impouts inparam.c -expect 1
  292.  
  293. internal:
  294.     $(LCLINTR) internal.c -expect 1
  295.     $(LCLINTR) internal.c +distinctinternalnames -expect 2
  296.     $(LCLINTR) internal.c -internalnamelen 28 -expect 3
  297.     $(LCLINTR) internal.c +internalnamecaseinsensitive -expect 3
  298.     $(LCLINTR) internal.c +internalnamecaseinsensitive +internalnamelookalike -expect 11
  299.  
  300. iter:
  301.     $(LCLINTR) iter -expect 14 -lclexpect 1
  302.     $(LCLINTR) iter2.c -expect 12
  303.  
  304. keep:
  305.     $(LCLINTR) keep.c +memchecks -expect 6
  306.  
  307. libs:
  308.     $(LCLINTR) libs.c +longunsignedunsignedintegral -expect 13
  309.     $(LCLINTR) libs.c -expect 17
  310.     $(LCLINTR) libs.c +globunspec +modunspec -expect 20
  311.     $(LCLINTR) libs.c +strictlib +globunspec +modunspec -expect 37
  312.  
  313. lintcomments:
  314.     $(LCLINTR) lintcomments.c -expect 4
  315.     $(LCLINTR) lintcomments.c -warnlintcomments -expect 1
  316.     $(LCLINTR) lintcomments.c -lintcomments -expect 4
  317.  
  318. list:
  319.     $(LCLINTR) list.c -expect 3
  320.  
  321. macros:
  322.     $(LCLINTR) macros -expect 17 
  323.     $(LCLINTR) macros.c +allmacros -expect 34
  324.     $(LCLINTR) macros.c +fcnmacros -expect 31
  325.  
  326.  
  327. macrosef:
  328.     $(LCLINTR) macrosef -expect 4
  329.     $(LCLINTR) macrosef.c +allmacros -expect 3
  330.     $(LCLINTR) macrosef.c +allmacros +sefuncon -expect 4
  331.  
  332. merge:
  333.     $(LCLINTR) merge.c +checks -exportheadervar -exportheader -expect 3
  334.  
  335. modifies:
  336.     $(LCLINTR) modifies.c modclient.c +impcheckedstatics +mustmod -expect 7
  337.  
  338. modtest:
  339.     $(LCLINTR) modtest -expect 10
  340.     $(LCLINTR) modtest +modunspec -expect 13
  341.     $(LCLINTR) modtest +mustmod -expect 14
  342.  
  343. moduncon:
  344.     $(LCLINTR) moduncon.c +moduncon -memchecks -expect 4
  345.     $(LCLINTR) moduncon.c +strict -expect 22
  346.  
  347. mongoincludes:
  348.     $(LCLINTR) mongoincludes.c -includenest 1 -expect 19
  349.     $(LCLINTR) mongoincludes.c -includenest 2 -expect 10
  350.     $(LCLINTR) mongoincludes.c -includenest 3 -expect 4
  351.     $(LCLINTR) mongoincludes.c -includenest 4 -expect 1
  352.     $(LCLINTR) mongoincludes.c -includenest 5 -expect 0
  353.  
  354. null: 
  355.     $(LCLINTR) null1.c -expect 14
  356.     $(LCLINTR) null1.c -null -expect 4
  357.     $(LCLINTR) null2.c -expect 10
  358.     $(LCLINTR) null3.c -expect 15
  359.     $(LCLINTR) null3.c -warnunixlib +unixlib -expect 16
  360.     $(LCLINTR) null4.c -expect 1
  361.     $(LCLINTR) null5.c -expect 4
  362.     $(LCLINTR) null6 -expect 4
  363.     $(LCLINTR) +quiet null6.lcl -dump null6
  364.     $(LCLINTR) null6.c -load null6 -expect 4
  365.  
  366. observer:
  367.     $(LCLINTR) observer +checks -exportheader -expect 10
  368.     $(LCLINTR) observer.c +checks -exportheader -expect 9
  369.     $(LCLINTR) observer.c -expect 8
  370.  
  371. oldstyle:
  372.     $(LCLINTR) oldstyle -expect 3
  373.  
  374. outglob:
  375.     $(LCLINTR) outglob -expect 10
  376.  
  377. outparam:
  378.     $(LCLINTR) outparam -expect 12
  379.  
  380. preds:
  381.     $(LCLINTR) +hints preds.c -expect 6
  382.     $(LCLINTR) +hints preds.c -weak -expect 1
  383.     $(LCLINTR) +hints preds.c -strict -exportheader -expect 8
  384.  
  385. prefixes:
  386.     $(LCLINTR) prefixes.c +partial
  387.     $(LCLINTR) prefixes.c +allmacros +checks +partial -exportheader -exportheadervar -expect 4
  388.     $(LCLINTR) prefixes.c -typeprefix "T" -expect 2
  389.     $(LCLINTR) prefixes.c -typeprefix "^" -expect 1
  390.     $(LCLINTR) prefixes.c -typeprefix "^*" -expect 2
  391.     $(LCLINTR) prefixes.c -typeprefix "^%*" -expect 2
  392.     $(LCLINTR) prefixes.c -typeprefix "^~*" -expect 2
  393.     $(LCLINTR) prefixes.c -typeprefix "^" +typeprefixexclude -expect 7
  394.     $(LCLINTR) prefixes.c -filestaticprefix "^^" -expect 4
  395.     $(LCLINTR) prefixes.c -filestaticprefix "^#" -expect 5
  396.     $(LCLINTR) prefixes.c -filestaticprefix "^?&x" -expect 5
  397.     $(LCLINTR) prefixes.c -globalprefix "G" -expect 1
  398.     $(LCLINTR) prefixes.c -globalprefix "&G?_^" -expect 1
  399.     $(LCLINTR) prefixes.c -externalprefix "G" -expect 5
  400.     $(LCLINTR) prefixes.c -typeprefix "T" -externalprefix "G" -expect 4
  401.     $(LCLINTR) prefixes.c -localprefix "?*" +localprefixexclude -expect 13
  402.  
  403. printflike:
  404.     $(LCLINTR) printflike.c -expect 6
  405.     $(LCLINTR) printflike.c -warnlintcomments -expect 5
  406.  
  407. rc:
  408.     -$(LCLINTR) -DMYSTERY='"a flag\"wicked cool"' rc.c -expect 1
  409.     -$(LCLINTR) -DMYSTERY=12 rc.c -expect 1
  410.     -$(LCLINTR) -f rc1.lclintrc rc.c
  411.     -$(LCLINTR) -UMYSTERY -f rc1.lclintrc rc.c -expect 1
  412.     -$(LCLINTR) -f rc3.lclintrc rc.c -expect 1
  413.  
  414. refcounts:
  415.     $(LCLINTR) refcounts.c -expect 7 
  416.  
  417. release:
  418.     $(LCLINTR) release.c +memchecks -expect 1
  419.  
  420. repexpose:
  421.     @-mv repexpose.lh repexpose.lh-old
  422.     $(LCLINTR) +lh repexpose +memchecks -expect 12
  423.     @-$(DIFF) repexpose.lh repexpose.lh-old
  424.     $(LCLINTR) repexpose +memchecks +retalias -expect 15
  425.     $(LCLINTR) repexpose +checks -expect 27
  426.  
  427. sharing: 
  428.     $(LCLINTR) sharing1.c -expect 24
  429.     $(LCLINTR) sharing3.c -expect  3
  430.     $(LCLINTR) sharing4.c -expect 13
  431.     $(LCLINTR) sharing4.c -paramimptemp -expect 11
  432.     $(LCLINTR) sharing5.c -expect 6
  433.  
  434. slovaknames:
  435.     $(LCLINTR) +hints slovaknames.c -expect 1
  436.     $(LCLINTR) +hints slovaknames.c +accessslovak 
  437.     $(LCLINTR) +hints +slovak slovaknames.c -expect 3
  438.     $(LCLINTR) +hints +slovak -slovakvars slovaknames.c -expect 2
  439.     $(LCLINTR) +hints +slovak -accessslovak slovaknames.c -expect 7
  440.  
  441. specclauses:
  442.     $(LCLINTR) specclauses.c -expect 5
  443.     $(LCLINTR) specclauses2.c -expect 8
  444.     $(LCLINTR) specclauses3.c -expect 6
  445.     $(LCLINTR) specclauses4.c -expect 3
  446.     $(LCLINTR) specclauses5.c -expect 3
  447.  
  448. special:
  449.     $(LCLINTR) special -expect 20
  450.     $(LCLINTR) special -relaxquals -expect 22
  451.  
  452. stack:
  453.     $(LCLINTR) stack.c -expect 5
  454.     $(LCLINTR) stack.c -stackref
  455.  
  456. staticarray:
  457.     $(LCLINTR) staticarray.c -expect 3
  458.  
  459. strings:
  460.     $(LCLINTR) strings.c -expect 3
  461.     $(LCLINTR) -readonlystrings -expect 1 strings.c
  462.     $(LCLINTR) +modobserverstrict -maintype -expect 4 strings.c
  463.  
  464. structassign:
  465.     $(LCLINTR) structassign.c -expect 4
  466.  
  467. typequals:
  468.     $(LCLINTR) typequals.c tq.lcl -expect 5
  469.     $(LCLINTR) typequals.c -expect 2
  470.  
  471. ud:
  472.     $(LCLINTR) ud.c -expect 9
  473.     $(LCLINTR) ud2 -specundef -expect 3
  474.  
  475. ulstypes:
  476.     $(LCLINTR) ulstypes.c -expect 8
  477.     $(LCLINTR) ulstypes.c +ignorequals 
  478.     $(LCLINTR) ulstypes.c +strict -exportheader -exportheadervar -expect 25
  479.  
  480. union:
  481.     $(LCLINTR) +memchecks union.c -expect 8
  482.  
  483. unreachable:
  484.     $(LCLINTR) unreachable.c -expect 6
  485.     $(LCLINTR) -unreachable unreachable.c -expect 2
  486.     $(LCLINTR) switch.c -expect 4
  487.  
  488. unused:
  489.     $(LCLINTR) unused.c +checks -expect 3
  490.     $(LCLINTR) unused.c +checks +topuse -expect 6
  491.  
  492. ###
  493. ### Bugs fixed and new features since version 2.1b
  494. ###
  495.  
  496. tests2.2:
  497.     @cd tests2.2 ; \
  498.     $(LCLINTR) boolops.c -expect 1 ; \
  499.         $(LCLINTR) booldef.c -expect 1 ; \
  500.         $(LCLINTR) break.c -expect 1 ; \
  501.         $(LCLINTR) bstring.c -expect 2 ; \
  502.         $(LCLINTR) decl.c -expect 1 ; \
  503.         $(LCLINTR) enumbool.c -expect 2 ; \
  504.         $(LCLINTR) enumbool.c -booltrue "true" -boolfalse "false" ; \
  505.     $(LCLINTR) +gnuextensions extension.c ; \
  506.     $(LCLINTR) extension.c ; \
  507.     $(LCLINTR) modarray.c ; \
  508.     $(LCLINTR) nestext.c -expect 1 ; \
  509.     $(LCLINTR) offsetof.c ; \
  510.     $(LCLINTR) sizeofarray.c -expect 3 ; \
  511.     $(LCLINTR) libraries.c -load obsolete ; \
  512.     $(LCLINTR) libraries.c -load oldversion -expect 1 ; \
  513.     $(LCLINTR) libraries.c +posixlib -dump libraries ; \
  514.     $(LCLINTR) libraries.c -load libraries
  515.  
  516. ###
  517. ### Integration Tests
  518. ###
  519.  
  520. db1:
  521.     setenv LCLINT '$(LCLINTR)'; cd db1; $(MAKE) -e test
  522.  
  523. db2:
  524.     setenv LCLINT '$(LCLINTR)'; cd db2; $(MAKE) -e test
  525.  
  526. db3:
  527.     setenv LCLINT '$(LCLINTR)'; cd db3; $(MAKE) -e test
  528.  
  529. ###
  530. ### More integration tests are used locally.  If you are developing 
  531. ### LCLint send mail to evs@larch.lcs.mit.edu to obtain extra 
  532. ### integration test cases.
  533.  
  534. clean:
  535.     -rm -f *~ #*# *.o *.lcs a.out 
  536.     -cd db1 ; $(MAKE) clean
  537.     -cd db2 ; $(MAKE) clean
  538.     -cd db3 ; $(MAKE) clean
  539.